home *** CD-ROM | disk | FTP | other *** search
/ Software 2000 / Software 2000 Volume 1 (Disc 1 of 2).iso / c64-games.disk / pacman.d64 / 3d pac man (.txt)
Encoding:
Commodore BASIC  |  1995-01-01  |  6.3 KB  |  150 lines

  1. 10 REM 3-D MAN 64
  2. 15 PRINT"[147]":DIMA%(19,22):W=1:LL=1336:GOTO1200
  3. 100 IFRND(W)<.94ANDM=.THEN225
  4. 103 IFMTHEN115
  5. 105 C=INT(RND(W)*5)+2:POKESP+39,C:IFPEEK(1194)-32THEN225
  6. 110 M=1:POKESP,90:POKESP+1,145:POKESP+23,252:POKESP+29,252
  7. 112 IFPEEK(SP+21)=22THENPOKESP+21,23
  8. 113 IFPEEK(SP+21)=30THENPOKESP+21,31
  9. 114 GOTO225
  10. 115 POKESP,78:POKESP+1,180:POKESP+23,253:POKESP+29,253:M=2:GOTO225
  11. 150 M=.:SF=.:IFPP=.THEN154
  12. 151 S=S+100:PP=.:POKESP,.:IFPEEK(SP+21)=31THENPOKESP+21,30
  13. 152 IFPEEK(SP+21)=23THENPOKESP+21,22
  14. 153 GOSUB1050:PRINT""S:GOTO400
  15. 154 GOSUB950:POKELL,32:LL=LL-1:IFLL-1331THEN400
  16. 160 PRINT"GAME   OVER":IFPEEK(197)=60THENPOKESP+21,.:RUN
  17. 165 GOTO160
  18. 200 IFPEEK(145)=247THENT=N1:M=.:O=W:SF=.:GOTO100
  19. 205 IFPEEK(145)=253THENT=N2:M=.:O=W:SF=.:GOTO100
  20. 210 IFPEEK(145)=251THENT=N3:M=.:O=W:SF=.:GOTO100
  21. 215 IFPEEK(145)=254THENT=N4:SF=W:O=W:GOTO100
  22. 220 GOTO100
  23. 225 IFO=.THEN200
  24. 227 O=.:ONTGOTO230,235,240,245
  25. 230 X=X+W:IFA%(X,Y)=WTHENX=X-W:GOTO780
  26. 234 CH=45:N1=2:N2=3:N3=4:N4=W:FL=W:D=W:F=-W:POKESP+8,PEEK(SP+8)+2:GOTO250
  27. 235 Y=Y+W:IFA%(X,Y)=WTHENY=Y-W:GOTO780
  28. 239 CH=54:N1=3:N2=4:N3=W:N4=2:FL=.:D=W:F=W:POKESP+9,PEEK(SP+9)+2:GOTO250
  29. 240 X=X-W:IFA%(X,Y)=WTHENX=X+W:GOTO780
  30. 244 CH=55:N1=4:N2=W:N3=2:N4=3:FL=W:D=-W:F=W:POKESP+8,PEEK(SP+8)-2:GOTO250
  31. 245 Y=Y-W:IFA%(X,Y)=WTHENY=Y+W:GOTO780
  32. 249 CH=56:N1=W:N2=2:N3=3:N4=4:FL=.:D=-W:F=-W:POKESP+9,PEEK(SP+9)-2
  33. 250 SYS30000:PRINTA$:POKESP+21,22:POKESP+2,.
  34. 252 IFA%(X,Y)=2THENAD=W:A%(X,Y)=.
  35. 255 IFA%(X,Y)=3THENAP=W:A%(X,Y)=.:PP=1:GOSUB1100
  36. 260 IFA%(X,Y)=4THEN760
  37. 262 IFFLTHEN350
  38. 265 IFA%(X+F,Y)-WTHENPRINTB$
  39. 270 IFA%(X-F,Y)-WTHENPRINTC$
  40. 275 IFA%(X,Y+D)=WTHENPRINTF$;G$:GOTO295
  41. 282 IFA%(X,Y+D*2)=WTHENPRINTH$
  42. 285 IFA%(X+F,Y+D)-WTHENPRINTD$
  43. 287 IFA%(X-F,Y+D)-WTHENPRINTE$
  44. 291 POKESP+42,7:IFA%(X,Y+D)=2ORA%(X,Y+D)=3THENPOKESP+21,30
  45. 292 IFA%(X,Y+D)=3THENPOKESP+42,6
  46. 293 POKESP+40,7:IFA%(X,Y+D*2)=2ORA%(X,Y+D*2)=3THENPOKESP+2,91
  47. 294 IFA%(X,Y+D*2)=3THENPOKESP+40,6
  48. 295 IFSFANDM=2THEN150
  49. 297 IFSFANDM=WTHEN1800
  50. 298 GOTO400
  51. 350 IFA%(X,Y+F)-WTHENPRINTB$
  52. 355 IFA%(X,Y-F)-WTHENPRINTC$
  53. 360 IFA%(X+D,Y)=WTHENPRINTF$;G$:GOTO383
  54. 367 IFA%(X+D*2,Y)=WTHENPRINTH$
  55. 370 IFA%(X+D,Y+F)-WTHENPRINTD$
  56. 375 IFA%(X+D,Y-F)-WTHENPRINTE$
  57. 378 POKESP+42,7:IFA%(X+D,Y)=2ORA%(X+D,Y)=3THENPOKESP+21,30
  58. 379 IFA%(X+D,Y)=3THENPOKESP+42,6
  59. 380 POKESP+40,7:IFA%(X+D*2,Y)=2ORA%(X+D*2,Y)=3THENPOKESP+2,91
  60. 381 IFA%(X+D*2,Y)=3THENPOKESP+40,6
  61. 383 IFSFANDM=2THEN150
  62. 385 IFSFANDM=WTHEN1800
  63. 400 IFSF=.THENM=.
  64. 405 IFADTHENDC=DC+1:PRINT""178-DC"[157] ":GOTO440
  65. 435 GOTO200
  66. 440 AD=.:IFDC=178THENPRINT"MAZE CLEARED![157][157][157][157][157][157][157][157][157][157][157]STAND BY!":GOTO1000
  67. 445 GOSUB900:S=S+10:PRINT""S:GOTO200
  68. 500 FORY=1TO22:FORX=1TO19:READD:A%(X,Y)=D:NEXT:NEXT:X=10:Y=17
  69. 502 X(1)=9:X(2)=10:X(3)=11:Y(1)=11:Y(2)=11:Y(3)=11:C(1)=3:C(2)=5:C(3)=7:DC=0
  70. 505 N1=4:N2=1:N3=2:N4=3:A%(X,Y)=O:D=4:POKE53280,0:POKE53281,0
  71. 510 V=54273:VV=V-1:POKE54296,15:POKE54277,250:POKE54278,210
  72. 520 POKE54276,33:GOTO1500
  73. 760 IFX>15THENX=3:POKESP+8,PEEK(SP+8)-30:GOTO400
  74. 770 POKESP+8,PEEK(SP+8)+30:X=17:GOTO400
  75. 780 POKEV,20:POKEVV,15:FORZ=1TO100:NEXT:POKEV,.:POKEVV,.:GOTO200
  76. 800 DATA1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,1
  77. 805 DATA1,2,1,1,2,1,1,1,2,1,2,1,1,1,2,1,1,2,1,1,3,1,1,2,1,1,1,2,1,2,1,1,1,2,1,1,3,1
  78. 810 DATA1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,2,1,1,2,1,2,1,1,1,1,1,2,1,2,1,1,2,1
  79. 815 DATA1,2,2,2,2,1,2,2,2,1,2,2,2,1,2,2,2,2,1,1,1,1,1,2,1,1,1,2,1,2,1,1,1,2,1,1,1,1
  80. 820 DATA1,1,1,1,2,1,2,2,2,2,2,2,2,1,2,1,1,1,1,1,1,1,1,2,1,2,1,1,0,1,1,2,1,2,1,1,1,1
  81. 825 DATA4,4,0,0,2,2,2,1,0,0,0,1,2,2,2,0,0,4,4,1,1,1,1,2,1,2,1,1,1,1,1,2,1,2,1,1,1,1
  82. 830 DATA1,1,1,1,2,1,2,2,2,2,2,2,2,1,2,1,1,1,1,1,1,1,1,2,1,2,1,1,1,1,1,2,1,2,1,1,1,1
  83. 835 DATA1,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,1,1,2,1,1,2,1,1,1,2,1,2,1,1,1,2,1,1,2,1
  84. 840 DATA1,3,2,1,2,2,2,2,2,2,2,2,2,2,2,1,2,3,1,1,1,2,1,2,1,2,1,1,1,1,1,2,1,2,1,2,1,1
  85. 845 DATA1,2,2,2,2,1,2,2,2,1,2,2,2,1,2,2,2,2,1,1,2,1,1,1,1,1,1,2,1,2,1,1,1,1,1,1,2,1
  86. 850 DATA1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  87. 900 FORZ=5TO50STEP9:POKEV,Z:POKEVV,Z-3:NEXT:FORZ=60TO20STEP-12
  88. 905 POKEVV,Z:POKEV,Z:NEXT:POKEV,.:POKEVV,.:RETURN
  89. 950 Z=140
  90. 960 FORZ=ZTOZ-20STEP-2:POKEV,Z:POKEVV,Z-10:NEXT:POKEV,.:POKEVV,.
  91. 970 FORZZ=1TO50:NEXT:Z=Z+5:IFZ>25THEN960
  92. 980 RETURN
  93. 1000 FORZ=1TO9:POKEV,100:POKEVV,90:FORZZ=1TO50:NEXT:POKEV,.:POKEVV,.
  94. 1010 FORZZ=1TO90:NEXT:NEXT:GOTO1700
  95. 1050 FORZ=10TO150STEP2:POKEV,Z:POKEVV,160-Z:NEXT:POKEV,.:POKEVV,.
  96. 1060 FORZ=1TO3:POKEV,150:POKEVV,130:FORZZ=1TO50:NEXT:POKEV,.:POKEVV,.
  97. 1070 FORZZ=1TO90:NEXT:NEXT:RETURN
  98. 1100 FORZ=1TO5:POKEV,100:POKEVV,60:FORZZ=1TO100:NEXT:POKEV,60:POKEVV,100
  99. 1110 FORZZ=1TO100:NEXT:POKEV,.:POKEVV,.:NEXT:RETURN
  100. 1200 PRINT"3  -  D     M  A  N"
  101. 1210 PRINT"( C ) 1 9 8 2   N  U  F  E  K  O  P"
  102. 1220 PRINT" B  Y    S  C  O  T  T    E  L  D  E  R":GOTO500
  103. 1500 REM ESTABLISH STRINGS
  104. 1505 A$="[205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][205][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"
  105. 1510 A$=A$+"[206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206][145][206]"
  106. 1515 B$="[165][157][165] [157][157][204][175][175][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167]"
  107. 1520 B$=B$+"[157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][207][183][183][157][157][157][180] [157][157][180]"
  108. 1525 C$="[170][157][157] [170][157][157][157][175][175][186][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167]"
  109. 1530 C$=C$+"[157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][165] [167][157][157][157][183][183][208][157][157] [170][157][170]"
  110. 1535 D$="[167][175][157][157][167][167][157][157][167][167][157][157][167][183]"
  111. 1540 E$="[175][165][157][157][165][165][157][157][165][165][157][157][183][180]"
  112. 1545 F$="[175][175][175][175][175][175][175][175][175][175]":FORZ=1TO5:F$=F$+"[157][157][157][157][157][157][157][157][157][157][157][157][170]          [180]"
  113. 1550 G$=G$+"[157][157][157][157][157][157][157][157][157][157][157][157][170]          [180]":NEXT:G$=G$+"[157][157][157][157][157][157][157][157][157][157][157][183][183][183][183][183][183][183][183][183][183]"
  114. 1555 H$="[175][175][157][157][157][170]  [180][157][157][157][157][170]  [180][157][157][157][183][183]"
  115. 1560 PRINT"[147]SCORE:"S
  116. 1570 PRINT"DOTS  REMAINING[157][157][157][157][157][157][157][157][157][158]178";
  117. 1575 PRINT"[157][157][157][157][157][157]L I V E S[157][157][157][157][157][157][157][158]     [157][157][157][157][157][157][157]R A D A R";
  118. 1580 FORZ=1332TOLL:POKEZ,81:NEXT
  119. 1600 FORZZ=0TO33:READZ:POKE30000+ZZ,Z:NEXT
  120. 1605 DATA160,0,162,0,169,32,157,0,4,157,240,4,157,224,5,200,232,192
  121. 1610 DATA20,208,239,232,136,192,0,208,250,224,240,208,229,96,234,234
  122. 1620 SP=53248:POKESP+21,30:POKE2042,13:FORZ=0TO62:READZZ:POKEZ+832,ZZ:NEXTZ
  123. 1625 POKESP+4,243:POKESP+5,176:POKESP+29,253:POKESP+23,253:POKESP+41,7
  124. 1627 SYS30000:PRINT"[157][157][157][157][157][157][157][158][183][183][183][183][183]";A$;E$
  125. 1630 DATA31,255,252,16,8,4,22,235,180,22,235,180,16,0,4,22,190,180,16,136
  126. 1635 DATA132,30,235,188,2,128,160,126,182,191,0,34,0,126,190,191,2,128,160
  127. 1640 DATA30,190,188,16,8,4,22,235,180,18,0,36,26,190,172,16,136,132,23,235
  128. 1645 DATA244,16,0,4
  129. 1650 FORZ=704TO765:POKEZ,.:NEXT:POKE766,1:POKESP+8,221:POKESP+9,168:POKE2044,11
  130. 1655 FORZ=0TO62:READZZ:POKEZ+896,ZZ:NEXT:POKE2041,14:POKE2043,14:POKESP+40,7
  131. 1660 POKESP+42,7:POKESP+3,147:POKESP+7,170:POKESP+2,91:POKESP+6,78
  132. 1670 DATA0,0,0,0,0,0,0,255,0,7,255,224,63,255,252,127,255,254,95,255,250,103
  133. 1675 DATA255,230,120,255,30,127,0,254,127,255,254,127,255,254,127,255,254,127
  134. 1680 DATA255,254,127,255,254,63,255,252,31,255,248,7,255,224,0,255,0,0,0,0,0,0,0
  135. 1690 GOTO1750
  136. 1700 RESTORE:A$="":B$=A$:C$=A$:D$=A$:E$=A$:F$=A$:G$=A$:H$=A$:I$=A$
  137. 1710 AD=.:DC=.:GOTO500
  138. 1750 FORZ=16320TO16382:READZZ:POKEZ,ZZ:NEXT:POKESP,.:POKESP+29,252
  139. 1760 POKESP+43,1:POKE2040,255:GOTO1810
  140. 1770 DATA0,255,0,7,255,224,31,255,248,60,126,60,125,126,62,125,126,190,127,239
  141. 1775 DATA254,127,247,254,127,251,254,127,247,254,115,255,206,113,8,142,120
  142. 1780 DATA66,30,127,255,254,63,255,252,28,231,56,28,231,56,56,231,28,0,0
  143. 1785 DATA0,0,0,0,0,0,0
  144. 1800 POKESP+29,253:POKESP+23,253:POKESP,78:POKESP+1,180
  145. 1805 POKESP+21,PEEK(SP+21)+1:IFPEEK(SP+21)=32THENPOKESP+21,31
  146. 1807 GOTO400
  147. 1810 PRINT"READY":FORZ=1TO999:NEXT
  148. 1820 PRINT"  GO[180][180]":FORZ=1TO400:NEXT
  149. 1830 PRINT"[205][206]":GOTO200
  150.